import numpy as np
import matplotlib.pyplot as plt

# 参数 a，决定了心形线的大小
a = 1

# 生成角度 theta，从 0 到 2π
theta = np.linspace(0, 2 * np.pi, 1000)

# 计算 r
r = a * (1 + np.cos(theta))

# 将极坐标转换为笛卡尔坐标
x = r * np.cos(theta)
y = r * np.sin(theta)

# 绘制心形线
plt.figure(figsize=(6, 6))
plt.plot(x, y, label='Cardioid', color='red', linewidth=2)

# 添加标题和图例
plt.title('Cardioid Curve', fontsize=14)
plt.legend()

# 设置坐标轴比例
plt.axis('equal')

# 隐藏坐标轴
plt.axis('off')

# 显示图形
plt.show()